| API Documentation |  |

- MAIN PAGE
- NAMESPACES
- CLASSES

Classes | Enumerations
nkExport Namespace Reference

Encompasses all API of component NilkinsExport. More...

## Classes
class | Base64Encoder
| Allows to encode and decode data into / from base64 encoding. More...
class | Exportable
| An interface to define objects that can be exported using this component. More...
struct | ExporterLoadResult
| Holds the information about a try to import data sources. More...
struct | ExportError
| Holds information about a failure when trying to import an object using an Exporter. More...
class | JsonExporter
| Exporter to use Json formatted data. More...
class | Node
| A node in the tree structure representing the data to export / import. More...
class | TreeReader
| Utility class providing an easier way to parse trees. More...
class | TreeReaderCompositeEntry
| A templated version of a composite entry, aimed at filling containers. More...
class | TreeReaderEntry
| An internal entry stored within the TreeReader. More...
class | TreeReaderTemplateEntry
| Templated utility version of an entry within the tree reader. More...

## Enumerations
enum | NODE_VALUE_TYPE { NODE_VALUE_TYPE::NOT_VALUE_TYPE, NODE_VALUE_TYPE::BOOL_TYPE, NODE_VALUE_TYPE::STRING_TYPE, NODE_VALUE_TYPE::INT_TYPE, NODE_VALUE_TYPE::UINT_TYPE, NODE_VALUE_TYPE::LONG_TYPE, NODE_VALUE_TYPE::ULONG_TYPE, NODE_VALUE_TYPE::FLOAT_TYPE, NODE_VALUE_TYPE::DOUBLE_TYPE }
| Describes the kind of value a node holds. More...
enum | NODE_NATURE { NODE_NATURE::EMPTY_NATURE = 0, NODE_NATURE::VALUE_NATURE, NODE_NATURE::OBJECT_NATURE, NODE_NATURE::ARRAY_NATURE }
| Describes the nature of a node. More...

## Detailed Description

Encompasses all API of component NilkinsExport.

This component offers an absraction in the form of a tree of data, which can then be passed to any exporter for conversion. Reciprocally, it can convert from a supported format to a tree representation, which can be read and interpreted. Check how a class can implement nkExport::Exportable and populate a nkExport::Node, to be fed to an exporter, for instance nkExport::JsonExporter.

## Enumeration Type Documentation

## ◆ NODE_VALUE_TYPE

enum nkExport::NODE_VALUE_TYPE
| strong

Describes the kind of value a node holds.

Enumerator
NOT_VALUE_TYPE | A node which is an object or an array will have no value attached. In such case, this value is returned.
BOOL_TYPE | A node holding a boolean.
STRING_TYPE | A node holding a string.
INT_TYPE | A node holding an integer.
UINT_TYPE | A node holding an unsigned integer.
LONG_TYPE | A node holding a long (8 bytes).
ULONG_TYPE | A node holding an unsigned long (8 bytes).
FLOAT_TYPE | A node holding a float.
DOUBLE_TYPE | A node holding a double.

## ◆ NODE_NATURE

enum nkExport::NODE_NATURE
| strong

Describes the nature of a node.

Enumerator
EMPTY_NATURE | Represents an empty node.
VALUE_NATURE | Represents a leaf node, holding a final value being either a bool, string, int, uint, long, ulong, float, double.
OBJECT_NATURE | Represents a node holding references to other nodes, via the named member accessors.
ARRAY_NATURE | Represents a node holding references to other nodes, via the indexed array accessors.